/**
 * 父应用传递的数据类型定义
 */
export interface MicroAppData {
    /** 用户信息 */
    userInfo?: {
        id?: number | string;
        name?: string;
        role?: string;
        permissions?: string[];
        [key: string]: any;
    };
    /** 菜单列表 */
    menuList?: Array<{
        label?: string;
        path?: string;
        icon?: string;
        children?: any[];
        [key: string]: any;
    }>;
    /** 权限路由 */
    permissionRoutes?: string[];
    /** 权限列表 */
    authorityList?: string[];
    /** 主题设置 */
    theme?: 'light' | 'dark';
    /** 自定义数据 */
    customData?: Record<string, any>;
}

/**
 * 微应用初始化状态
 */
export interface MicroAppInitState {
    /** 是否已初始化 */
    initialized: boolean;
    /** 初始化时间 */
    initTime?: number;
    /** 接收到的数据 */
    data?: MicroAppData;
    /** 错误信息 */
    error?: string;
}

/**
 * 消息事件类型
 */
export interface MicroAppMessage {
    type: string;
    appName: string;
    data: MicroAppData;
    timestamp: number;
}

 